/**
 * 检查两个值是否“深相等”，与 === 类似；
 * === 比较内存位置和内容
 * 总之，Object.is() 更适合检测两个值是否确实相等，而 === 则更关注值的内容以及类型的匹配，包括NaN的情况。
 */

const obj1 = { a: 1 };
const obj2 = { a: 1 };

console.log(Object.is(NaN, NaN)); // true
console.log(Object.is(+0, -0)); // false 值不相等 不是相同的数值实例
console.log(Object.is(obj1, obj2)); // false 引用地址不等
console.log(NaN === NaN); // false 引用地址不等
console.log(+0 === -0); // true 比较数值本身，数字类型都是0
